package com.lck.tutor.common;

/**
 * @author:鹿存岿
 * @date 2022/10/19 22:38
 */
public class Result {

    /**
     * 成功
     * @param data
     * @param <T>
     * @return
     */
    public static <T>BaseResponse<T> success(T data) {
        return new BaseResponse<>(0,data,"ok");
    }

    public static <T>BaseResponse<T> fail(ErrorCode errorCode){
        return new BaseResponse<>(errorCode);
    }

    /**
     * 失败
     * @param code
     * @param <T>
     * @return
     */
    public static <T> BaseResponse<T> fail(int code,String message,String description){
        return new BaseResponse<>(code,null,message,description);
    }
    /**
     * 失败
     * @param errorCode
     * @param <T>
     * @return
     */
    public static <T> BaseResponse<T> fail(ErrorCode errorCode,String description){
        return new BaseResponse<>(errorCode.getCode(),null,errorCode.getMessage(),description);
    }
    /**
     * 失败
     * @param errorCode
     * @param <T>
     * @return
     */
    public static <T> BaseResponse<T> fail(ErrorCode errorCode,String message,String description){
        return new BaseResponse<>(errorCode.getCode(),null,message,description);
    }
}
